package com.zmm.zebulon.starter.biz.data.permission.core.rule;

import java.util.List;

/**
 * description: {@link DataPermissionRule} 工厂接口<br>
 * 作为 {@link DataPermissionRule} 的容器，提供管理能力
 *
 * @author zebulon
 * package com.zmm.zebulon.starter.biz.data.permission.core.rule
 * name: DataPermissionRuleFactory
 * date 2024/1/8 23:18
 */
public interface DataPermissionRuleFactory {

    /**
     * 获得所有数据权限规则数组
     *
     * @return 数据权限规则数组
     */
    List<DataPermissionRule> getDataPermissionRules();

    /**
     * 获得指定 Mapper 的数据权限规则数组
     *
     * @param mappedStatementId 指定 Mapper 的编号
     * @return 数据权限规则数组
     */
    List<DataPermissionRule> getDataPermissionRule(String mappedStatementId);

}

